package com.ant.entity;

import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.io.Serializable;
import java.util.Date;
import java.util.Map;

/**
 * 实体基类
 * 
 * 所有业务实体类的父类，提供通用的审计字段和功能
 * 包含创建时间、更新时间、创建人、更新人等审计信息
 * 实现了Serializable接口，支持序列化
 *
 * @author ruoyi
 */
@Data
@AllArgsConstructor
@NoArgsConstructor
public class BaseEntity implements Serializable
{
    /** 序列化版本号 */
    private static final long serialVersionUID = 1L;

    /** 搜索值 - 用于模糊查询的搜索关键词 */
    private String searchValue;

    /** 创建者 - 记录创建该实体的用户标识 */
    private String createBy;

    /** 创建时间 - 记录实体的创建时间戳 */
    private Date createTime;

    /** 更新者 - 记录最后修改该实体的用户标识 */
    private String updateBy;

    /** 更新时间 - 记录实体的最后修改时间戳 */
    private Date updateTime;

    /** 备注 - 实体的备注信息，用于存储额外的描述性文本 */
    private String remark;

    /** 请求参数 - 存储额外的请求参数，用于扩展查询条件 */
    private Map<String, Object> params;
}
